﻿namespace SugarTank.Mobile.Managers.Contracts
{
    using System;
    using CommonTypes.Phone;
    using Helpers;

    public interface IMediaManager
    {
        /// <summary>
        /// Occurs when [microphone recording started].
        /// </summary>
        event EventHandler<EventArgs> MicrophoneRecordingStarted;

        /// <summary>
        /// Occurs when [microphone recording stopped].
        /// </summary>
        event EventHandler<EventArgs<MicrophoneResult>> MicrophoneRecordingStopped;

        /// <summary>
        /// Starts the microphone recording.
        /// </summary>
        void StartMicrophoneRecording();

        /// <summary>
        /// Stops the microphone recording.
        /// </summary>
        void StopMicrophoneRecording();
    }
}
